<?php

include_once ('com/alibaba/openapi/client/entity/SDKDomain.class.php');
include_once ('com/alibaba/openapi/client/entity/ByteArray.class.php');
include_once ('FenxiaoWarehouseCreateOrderParam/AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequest.class.php');
include_once ('FenxiaoWarehouseCreateOrderParam/AlibabaCbuLinkorderModelLinkOrderReceiverInfo.class.php');

class AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequest extends SDKDomain {

       	
    private $ali1688RefundId;
    
        /**
    * @return 1688售后单id
    */
        public function getAli1688RefundId() {
        return $this->ali1688RefundId;
    }
    
    /**
     * 设置1688售后单id     
     * @param String $ali1688RefundId     
     * 参数示例：<pre>111</pre>     
     * 此参数必填     */
    public function setAli1688RefundId( $ali1688RefundId) {
        $this->ali1688RefundId = $ali1688RefundId;
    }
    
        	
    private $cloudWarehouseCode;
    
        /**
    * @return 云仓code
    */
        public function getCloudWarehouseCode() {
        return $this->cloudWarehouseCode;
    }
    
    /**
     * 设置云仓code     
     * @param String $cloudWarehouseCode     
     * 参数示例：<pre>SD233</pre>     
     * 此参数必填     */
    public function setCloudWarehouseCode( $cloudWarehouseCode) {
        $this->cloudWarehouseCode = $cloudWarehouseCode;
    }
    
        	
    private $orderEntryList;
    
        /**
    * @return 子单列表
    */
        public function getOrderEntryList() {
        return $this->orderEntryList;
    }
    
    /**
     * 设置子单列表     
     * @param array include @see AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequest[] $orderEntryList     
     * 参数示例：<pre>{}</pre>     
     * 此参数必填     */
    public function setOrderEntryList(AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequest $orderEntryList) {
        $this->orderEntryList = $orderEntryList;
    }
    
        	
    private $orderType;
    
        /**
    * @return 订单类型
    */
        public function getOrderType() {
        return $this->orderType;
    }
    
    /**
     * 设置订单类型     
     * @param String $orderType     
     * 参数示例：<pre>cloudWarehouseReturn：云仓中转退货</pre>     
     * 此参数必填     */
    public function setOrderType( $orderType) {
        $this->orderType = $orderType;
    }
    
        	
    private $outOrderId;
    
        /**
    * @return 下游订单号
    */
        public function getOutOrderId() {
        return $this->outOrderId;
    }
    
    /**
     * 设置下游订单号     
     * @param String $outOrderId     
     * 参数示例：<pre>111</pre>     
     * 此参数必填     */
    public function setOutOrderId( $outOrderId) {
        $this->outOrderId = $outOrderId;
    }
    
        	
    private $outRefundId;
    
        /**
    * @return 下游售后单号
    */
        public function getOutRefundId() {
        return $this->outRefundId;
    }
    
    /**
     * 设置下游售后单号     
     * @param String $outRefundId     
     * 参数示例：<pre>111</pre>     
     * 此参数必填     */
    public function setOutRefundId( $outRefundId) {
        $this->outRefundId = $outRefundId;
    }
    
        	
    private $outReturnAddressInfo;
    
        /**
    * @return 下游退货地址
    */
        public function getOutReturnAddressInfo() {
        return $this->outReturnAddressInfo;
    }
    
    /**
     * 设置下游退货地址     
     * @param AlibabaCbuLinkorderModelLinkOrderReceiverInfo $outReturnAddressInfo     
     * 参数示例：<pre>{}</pre>     
     * 此参数必填     */
    public function setOutReturnAddressInfo(AlibabaCbuLinkorderModelLinkOrderReceiverInfo $outReturnAddressInfo) {
        $this->outReturnAddressInfo = $outReturnAddressInfo;
    }
    
        	
    private $outReturnLogisticsCompanyCode;
    
        /**
    * @return 下游退货物流公司编码
    */
        public function getOutReturnLogisticsCompanyCode() {
        return $this->outReturnLogisticsCompanyCode;
    }
    
    /**
     * 设置下游退货物流公司编码     
     * @param String $outReturnLogisticsCompanyCode     
     * 参数示例：<pre>SGHKY</pre>     
     * 此参数必填     */
    public function setOutReturnLogisticsCompanyCode( $outReturnLogisticsCompanyCode) {
        $this->outReturnLogisticsCompanyCode = $outReturnLogisticsCompanyCode;
    }
    
        	
    private $outReturnLogisticsCompanyName;
    
        /**
    * @return 下游退货物流公司名称
    */
        public function getOutReturnLogisticsCompanyName() {
        return $this->outReturnLogisticsCompanyName;
    }
    
    /**
     * 设置下游退货物流公司名称     
     * @param String $outReturnLogisticsCompanyName     
     * 参数示例：<pre>xxx</pre>     
     * 此参数必填     */
    public function setOutReturnLogisticsCompanyName( $outReturnLogisticsCompanyName) {
        $this->outReturnLogisticsCompanyName = $outReturnLogisticsCompanyName;
    }
    
        	
    private $outReturnLogisticsNumber;
    
        /**
    * @return 下游退货物流运单号
    */
        public function getOutReturnLogisticsNumber() {
        return $this->outReturnLogisticsNumber;
    }
    
    /**
     * 设置下游退货物流运单号     
     * @param String $outReturnLogisticsNumber     
     * 参数示例：<pre>12dde234</pre>     
     * 此参数必填     */
    public function setOutReturnLogisticsNumber( $outReturnLogisticsNumber) {
        $this->outReturnLogisticsNumber = $outReturnLogisticsNumber;
    }
    
        	
    private $ali1688OrderId;
    
        /**
    * @return 1688订单id
    */
        public function getAli1688OrderId() {
        return $this->ali1688OrderId;
    }
    
    /**
     * 设置1688订单id     
     * @param String $ali1688OrderId     
     * 参数示例：<pre>222222</pre>     
     * 此参数必填     */
    public function setAli1688OrderId( $ali1688OrderId) {
        $this->ali1688OrderId = $ali1688OrderId;
    }
    
    	
	private $stdResult;
	
	public function setStdResult($stdResult) {
		$this->stdResult = $stdResult;
					    			    			if (array_key_exists ( "ali1688RefundId", $this->stdResult )) {
    				$this->ali1688RefundId = $this->stdResult->{"ali1688RefundId"};
    			}
    			    		    				    			    			if (array_key_exists ( "cloudWarehouseCode", $this->stdResult )) {
    				$this->cloudWarehouseCode = $this->stdResult->{"cloudWarehouseCode"};
    			}
    			    		    				    			    			if (array_key_exists ( "orderEntryList", $this->stdResult )) {
    			$orderEntryListResult=$this->stdResult->{"orderEntryList"};
    				$object = json_decode ( json_encode ( $orderEntryListResult ), true );
					$this->orderEntryList = array ();
					for($i = 0; $i < count ( $object ); $i ++) {
						$arrayobject = new ArrayObject ( $object [$i] );
						$AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequestResult=new AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequest();
						$AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequestResult->setArrayResult($arrayobject );
						$this->orderEntryList [$i] = $AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequestResult;
					}
    			}
    			    		    				    			    			if (array_key_exists ( "orderType", $this->stdResult )) {
    				$this->orderType = $this->stdResult->{"orderType"};
    			}
    			    		    				    			    			if (array_key_exists ( "outOrderId", $this->stdResult )) {
    				$this->outOrderId = $this->stdResult->{"outOrderId"};
    			}
    			    		    				    			    			if (array_key_exists ( "outRefundId", $this->stdResult )) {
    				$this->outRefundId = $this->stdResult->{"outRefundId"};
    			}
    			    		    				    			    			if (array_key_exists ( "outReturnAddressInfo", $this->stdResult )) {
    				$outReturnAddressInfoResult=$this->stdResult->{"outReturnAddressInfo"};
    				$this->outReturnAddressInfo = new AlibabaCbuLinkorderModelLinkOrderReceiverInfo();
    				$this->outReturnAddressInfo->setStdResult ( $outReturnAddressInfoResult);
    			}
    			    		    				    			    			if (array_key_exists ( "outReturnLogisticsCompanyCode", $this->stdResult )) {
    				$this->outReturnLogisticsCompanyCode = $this->stdResult->{"outReturnLogisticsCompanyCode"};
    			}
    			    		    				    			    			if (array_key_exists ( "outReturnLogisticsCompanyName", $this->stdResult )) {
    				$this->outReturnLogisticsCompanyName = $this->stdResult->{"outReturnLogisticsCompanyName"};
    			}
    			    		    				    			    			if (array_key_exists ( "outReturnLogisticsNumber", $this->stdResult )) {
    				$this->outReturnLogisticsNumber = $this->stdResult->{"outReturnLogisticsNumber"};
    			}
    			    		    				    			    			if (array_key_exists ( "ali1688OrderId", $this->stdResult )) {
    				$this->ali1688OrderId = $this->stdResult->{"ali1688OrderId"};
    			}
    			    		    		}
	
	private $arrayResult;
	public function setArrayResult($arrayResult) {
		$this->arrayResult = $arrayResult;
				    		    			if (array_key_exists ( "ali1688RefundId", $this->arrayResult )) {
    			$this->ali1688RefundId = $arrayResult['ali1688RefundId'];
    			}
    		    	    			    		    			if (array_key_exists ( "cloudWarehouseCode", $this->arrayResult )) {
    			$this->cloudWarehouseCode = $arrayResult['cloudWarehouseCode'];
    			}
    		    	    			    		    		if (array_key_exists ( "orderEntryList", $this->arrayResult )) {
    		$orderEntryListResult=$arrayResult['orderEntryList'];
    			$this->orderEntryList = new AlibabaCbuLinkorderParamCloudWarehouseOrderCreateRequestCloudWarehouseOrderEntryCreateRequest();
    			$this->orderEntryList->setStdResult ( $orderEntryListResult);
    		}
    		    	    			    		    			if (array_key_exists ( "orderType", $this->arrayResult )) {
    			$this->orderType = $arrayResult['orderType'];
    			}
    		    	    			    		    			if (array_key_exists ( "outOrderId", $this->arrayResult )) {
    			$this->outOrderId = $arrayResult['outOrderId'];
    			}
    		    	    			    		    			if (array_key_exists ( "outRefundId", $this->arrayResult )) {
    			$this->outRefundId = $arrayResult['outRefundId'];
    			}
    		    	    			    		    		if (array_key_exists ( "outReturnAddressInfo", $this->arrayResult )) {
    		$outReturnAddressInfoResult=$arrayResult['outReturnAddressInfo'];
    			    			$this->outReturnAddressInfo = new AlibabaCbuLinkorderModelLinkOrderReceiverInfo();
    			    			$this->outReturnAddressInfo->setStdResult ( $outReturnAddressInfoResult);
    		}
    		    	    			    		    			if (array_key_exists ( "outReturnLogisticsCompanyCode", $this->arrayResult )) {
    			$this->outReturnLogisticsCompanyCode = $arrayResult['outReturnLogisticsCompanyCode'];
    			}
    		    	    			    		    			if (array_key_exists ( "outReturnLogisticsCompanyName", $this->arrayResult )) {
    			$this->outReturnLogisticsCompanyName = $arrayResult['outReturnLogisticsCompanyName'];
    			}
    		    	    			    		    			if (array_key_exists ( "outReturnLogisticsNumber", $this->arrayResult )) {
    			$this->outReturnLogisticsNumber = $arrayResult['outReturnLogisticsNumber'];
    			}
    		    	    			    		    			if (array_key_exists ( "ali1688OrderId", $this->arrayResult )) {
    			$this->ali1688OrderId = $arrayResult['ali1688OrderId'];
    			}
    		    	    		}
 
   
}
?>